Method of, and system for, communicating data, and a station for transmitting data

ABSTRACT

Data is transmitted from a first station to a second station, by following method: at the first station, dividing the data into a sequence of data packets and transmitting the sequence of data packets; at the second station, receiving the data packets and transmitting acknowledgements indicating whether the data packets have been received successfully; at the first station, retransmitting as a sub-sequence of a plurality of sub-packets a data packet which has not been received successfully; and at the second station, reconstituting the data from the data packets and sub-packets; wherein the data packets comprise a sequence number providing an indication of position of each data packet within the sequence of data packets, and the sub-packets comprise a sub-packet indicator providing an indication of position of each sub-packet within the sub-sequence of sub-packets, and wherein the sequence numbers and sub-packet indicators include a plurality of numbers in common.

The invention relates to a method of communicating data, to a system forcommunicating data, and to a station for transmitting data. Theinvention has application in, for example but not exclusively, mobilecommunications systems such as the Universal Mobile TelecommunicationSystem (UMTS) and the CDMA2000 system. It may be used for uplink (mobilestation to base station) communication or downlink (base station tomobile station) communication of data.

According to the current UMTS specifications, available at www.3gpp.org,data to be transmitted from a first station to a second station isdivided into packets. Each packet may include parity bits to enable thesecond station to detect or correct errors occurring duringtransmission.

At the physical layer of a protocol stack, an ARQ or Hybrid ARQ (HARQ)protocol may be operated, whereby the second station indicates corrector incorrect reception of each packet by transmission of a positive ornegative acknowledgement respectively. In some cases either negativeacknowledgements or positive acknowledgements are not transmitted. If apacket is not received correctly, it may be retransmitted up to apredetermined number of times. The initial transmissions andretransmissions of a packet are combined at the physical layer of thesecond station, before passing correctly received packets up to the MAC(Medium Access Control) layer. A New Data Indicator (NDI) at thephysical layer tells the second station whether a received packet is thefirst transmission of a new packet or a retransmission of an earlierpacket which should be combined with the previously-receivedtransmissions of that packet.

After the first station has transmitted a packet, there will be somedelay before the first station receives the indication of whether thepacket was received correctly. If the first station is unable to starttransmitting the next packet until the indication has been received, thetotal rate of data transmission will be reduced. Therefore the firststation is typically allowed to transmit further packets while waitingfor the indication of correct reception of the first packet. Each packettransmitted during this period is said to use a different “HARQ channel”or “HARQ process”. Each HARQ process is typically identified by a HARQProcess Identifier which is signalled with the packet. Theretransmissions for a given packet always occur on the same HARQ processas the initial transmission of the packet.

At the MAC layer, each packet carries a header which contains a sequencenumber (SN) which enables the second station to re-order the packetsinto the correct order. The re-ordering is carried out by the MAC layerof the second station, prior to passing the packets to a higher layer inthe protocol stack. In this case, each packet comprises a MAC ProtocolData Unit (PDU).

The HARQ protocol described above is illustrated diagrammatically inFIG. 1. The diagram is arranged into steps on the left side performed bythe first station which is sending the data, and steps on the right sideperformed by the second station which is receiving the data. The diagramis also arranged in an upper MAC layer and a lower physical layer. TheMAC layer of the first station receives data from a higher layer andgenerates a plurality of MAC packets 10. For clarity, only one MACpacket 10 is illustrated in FIG. 1. The MAC packet 10 comprises data 12,which is a portion of the higher layer data, and a MAC header 14 whichincludes a sequence number SN. The MAC packet 10 is passed down to thephysical (PHY) layer where a physical layer packet 20 is constructed byadding a physical layer header 24 to the MAC packet 10. The physicallayer header 24 includes the NDI and a HARQ Process Identifier. Thefirst station transmits the physical layer packet 20 to the secondstation. If the second station is unable to fully recover the data inthe received data packet 30 due to errors in transmission, it transmitsa negative acknowledgement (NACK) to the first station, in response towhich the first station retransmits the physical layer packet 20. Thesecond station deletes the physical layer header 24 and may combinesdifferent received versions 30, 40 of the same physical layer packet toderive an error free version 50 which is then passed up to the MAC layerof the second station. The MAC layer uses the sequence numbers SN tore-order received packets as necessary to reconstitute the originalorder of the data from the higher layer.

The re-ordering of packets received in the MAC layer from different HARQprocesses is illustrated in FIG. 2. Packet 1 is transmitted by the firststation using HARQ Process 1. As HARQ Process 1 is then busy waiting foran acknowledgement, packet 2 is transmitted using HARQ Process 2.Similarly packet 3 is transmitted using HARQ Process 3. Before packet 4is transmitted, a positive acknowledgement ACK is received by HARQProcess 1, indicating that packet 1 was received successfully by thesecond station. Therefore HARQ Process 1 is available to transmit packet4. Similarly, positive acknowledgements received on HARQ Processes 2 and3 enable packets 5 and 6 to be transmitted on these respective HARQProcesses.

HARQ Process 1 receives a negative acknowledgement NACK aftertransmitting packet 4, indicating that packet 4 has not been receivedsuccessfully by the second station. Therefore, HARQ Process 1retransmits packet 4, and so packets 7 and 8 are transmitted onavailable HARQ Processes 2 and 3.

It can be seen in FIG. 2 that the order in which the second stationfinally receives the correct data packets is 1, 2, 3, 5, 6, 4, 7, 8. Thesecond station uses the sequence number SN to re-order the packets,holding packets 5 and 6 in a buffer until packet 4 is correctlyreceived.

Sometimes the first station will retransmit a packet unnecessarily, forexample if a positive acknowledgement transmitted by the second stationis corrupted and received by the first station as a negativeacknowledgement. In the example of FIG. 2, the negative acknowledgementNACK received by the first station after the transmission of packet 4might in fact have been a positive acknowledgement transmitted by thesecond station. In this case, the packets received by the second stationwould be 1, 2, 3, 4, 5, 6, 4, 7, 8. Therefore the second station wouldnormally discard any packet which appeared from the SN to be a duplicateof one which had already been successfully received.

If a packet is not correctly received (e.g. as determined by a cyclicredundancy check) by the second station after the maximum number ofretransmissions (which may be zero), the data may be lost, oralternatively a higher layer in the protocol stack of the second stationmay attempt to initiate a retransmission. However, such higher-layerretransmissions are typically slow and may cause unacceptable delay.Further, higher-layer retransmissions typically involve retransmittingthe whole of a higher-layer PDU, which may comprise a plurality of MACPDUs; in this case the loss of one MAC PDU may cause the loss of a wholehigher-layer PDU, and if retransmission of the higher-layer PDU isattempted a larger amount of transmitted energy will be required and alarger amount of interference generated than if only the MAC PDU wasretransmitted.

A known solution disclosed in WO 2004/043017 for reducing the amount ofretransmission is to retransmit only a portion, for example one quarter,of the data contained in the original packet. In the presentspecification, such a packet containing only a portion of the datacontained in the original packet is termed a sub-packet. According to WO2004/043017, a sub-packet uses the sequence number from the originalpacket, which enables the second station to insert the portion of datain the correct position in the sequence of received packets.

The first station may transmit the sub-packet after a predeterminednumber of failed attempts to transmit the original packet. By selectingonly a portion of the original data for retransmission, the probabilityof successful reception of the data may be increased. Typically, morerobust coding or modulation schemes may be used for the sub-packet.

In parallel with, or interspersed between, the attempts to transmit anoriginal packet and the sub-packet, the first station may transmitother, new packets using sequence numbers incremented relative to thesequence numbers used for the original packet and the sub-packet.

A limitation of this known solution is manifest if the amount of data tobe retransmitted exceeds the amount of data that can be accommodatedreliably in a single sub-packet. It is undesirable to enlarge thesub-packet, or revert to retransmitting the original data packet, asthis will reduce the reliability of reception, resulting in moreretransmissions, which tends to diminish the benefit of the sub-packet.

U.S. Pat. No. 6,519,731 B1 discloses a solution permitting a pluralityof sub-packets to be used for retransmitting of the data contained in apacket. To assure the availability of sequence numbers for sub-packetswithout reusing packet numbers, the packet numbers are transmitted inincrements of N+1, where N is the number of sub-packets available forretransmitting of the data contained in a packet. A disadvantage of thisscheme is that a large numbering range is required to provide distinctsequence numbers for packets and sub-packets, resulting in an increasedoverhead in packets and sub-packets.

An object of the invention is to enable an improved retransmissionprotocol.

According to a first aspect of the invention there is provided a methodof transmitting data from a first station to a second station,comprising:

at the first station, dividing the data into a sequence of data packetsand transmitting the sequence of data packets;

at the second station, receiving the data packets and transmittingacknowledgements indicating whether the data packets have been receivedsuccessfully;

at the first station, retransmitting as a sub-sequence of a plurality ofsub-packets a data packet which has not been received successfully;

at the second station, reconstituting the data from the data packets andsub-packets;

wherein the data packets comprise a sequence number providing anindication of position of each data packet within the sequence of datapackets, and the sub-packets comprise a sub-packet indicator providingan indication of position of each sub-packet within the sub-sequence ofsub-packets, and wherein the sequence numbers and sub-packet indicatorsinclude a plurality of numbers in common.

According to a second aspect of the invention there is provided a firststation for transmitting data to a second station, the first stationcomprising:

means for dividing the data into a sequence of data packets, each datapacket including a sequence number providing an indication of positionof the data packet within the sequence of data packets;

means for transmitting each data packet in turn;

means for receiving an acknowledgement from the second stationindicating whether the transmitted data packet has been receivedsuccessfully;

means responsive to receiving an acknowledgement indicating that thetransmitted data packet has not been received successfully, for dividingthe unsuccessful data packet into a sub-sequence of sub-packets, eachsub-packet including a sub-packet indicator providing an indication ofposition of the sub-packet within the sub-sequence, wherein the sequencenumbers and the sub-packet indicators include a plurality of numbers incommon; andmeans for transmitting each sub-packet in turn.

According to a third aspect of the invention there is provided a systemfor communicating data from a first station to a second station, thesystem comprising a first station in accordance with the second aspectof the invention and a second station having:

means for receiving the data packets and sub-packets;

means for decoding the received data packets and sub-packets;

means for generating acknowledgements indicative of whether the receiveddata packets and sub-packets have been received successfully;

means for transmitting the acknowledgements; and

means for employing the sequence numbers and sub-packet indicators toreconstitute the data.

By using a plurality of sub-packets, efficiency can be improved evenwhen the amount of data to be retransmitted exceeds the amount that canbe efficiently accommodated in a single sub-packet. The retransmissionscheme disclosed in WO 2004/043017 cannot be readily adapted to providea plurality of sub-packets for retransmissions because in WO 2004/043017the sub-packet contains the same sequence number as the original datapacket, and if a plurality of sub-packets were to be transmitted usingthat same sequence number, the second station would be unable todistinguish them and so be unable to correctly re-order the receivedsub-packets.

By including a sub-packet indicator in each sub-packet, the secondstation can distinguish the sub-packets and can correctly re-order thereceived sub-packets.

By re-using the packet sequence numbers for the sub-packet indicator asmaller numbering range is required than that disclosed in U.S. Pat. No.6,519,731 B1, resulting in reduced packet overhead and improvedefficiency.

In a first embodiment of the invention the sub-packet indicatorcomprises, in consecutive sub-packets, consecutive sequence numberscommencing with the sequence number of the data packet beingretransmitted and followed by subsequent sequence numbers.

In another embodiment of the invention the sub-packet indicatorcomprises, in consecutive sub-packets, consecutive sequence numberscommencing with a sequence number having a predetermined negative offsetfrom the sequence number of the data packet being retransmitted andfollowed by subsequent sequence numbers.

In another embodiment of the invention the sub-packet indicatorcomprises, in consecutive sub-packets, consecutive sequence numberscommencing with the sequence number of the packet being retransmittedand followed by preceding sequence numbers in reverse order of usecompared with the sequence numbers in the data packets.

In another embodiment of the invention the sub-packet indicatorcomprises, in consecutive sub-packets, consecutive sequence numberscommencing with a sequence number having a predetermined negative offsetfrom the sequence number of the packet being retransmitted and followedby sequence numbers preceding the offset sequence number in reverseorder of use compared with the sequence numbers in the data packets.

In another embodiment of the invention the sub-packet indicatorcomprises, in consecutive sub-packets, consecutive sequence numbers inthe same order as used in the data packets and terminating with thesequence number of the data packet being retransmitted.

In another embodiment of the invention the sub-packet indicatorcomprises, in consecutive sub-packets, consecutive sequence numbers inthe same order as used in the data packets and terminating with asequence number having a predetermined negative offset from the sequencenumber of the data packet being retransmitted.

In another embodiment of the invention the sub-packet indicatorcomprises, in the first sub-packet the sequence number of the datapacket being retransmitted, and in following sub-packets, precedingsequence numbers in the same order of use as the sequence numbers in thedata packets.

In another embodiment of the invention the sub-packet indicatorcomprises, in the first sub-packet a sequence number having apredetermined negative offset from the sequence number of the datapacket being retransmitted, and in following sub-packets, sequencenumbers preceding the offset sequence number in the same order of use asthe sequence numbers in the data packets.

The sequence numbers typically, but not necessarily, have consecutiveinteger values; they may be a set of any numbers known to both the firststation and the second station and used in a predetermined order. Thesequence numbers are used cyclically, such that when all the sequencenumbers have been used, they are used again in the same order. The term“consecutive sequence numbers” refers to successive numbers in thepredetermined order, including cyclic re-use.

The invention will now be described, by way of example only, withreference to the accompanying drawings wherein;

FIG. 1 is a diagrammatic representation of a Hybrid ARQ protocol;

FIG. 2 is illustrates the re-ordering of data packets transmitted withdifferent HARQ processes;

FIG. 3 is a flow chart of a method of communicating data in accordancewith the invention;

FIG. 4 is a schematic diagram of a system for communicating data inaccordance with the invention;

FIG. 5 illustrates sequence numbers and sub-packet indicators inaccordance with a first embodiment of the invention;

FIG. 6 illustrates sequence numbers and sub-packet indicators inaccordance with a second embodiment of the invention;

FIG. 7 illustrates sequence numbers and sub-packet indicators inaccordance with a third embodiment of the invention;

FIG. 8 illustrates sequence numbers and sub-packet indicators inaccordance with a fourth embodiment of the invention; and

FIG. 9 illustrates additional aspects of the second embodiment of theinvention.

FIG. 3 is a flow chart of a method of communicating data from a firststation to a second station in accordance with the invention. The methodcommences at step 300 where data for transmission by the first stationis divided into packets. At step 305 each packet has a sequence numberinserted into it, and at step 310 the first packet is transmitted. Atstep 315 the transmitted packet is received by the second station anderror correction performed if errors are present in the received packet.A positive acknowledgement is transmitted if the packet is receivedsuccessfully, after error correction if appropriate, and a negativeacknowledgement is transmitted if the packet cannot be successfullydecoded.

At step 320, the first station determines from the receivedacknowledgements whether the packet has been received successfully bythe second station. If it has, then flow reverts to step 310 where thenext packet is transmitted.

If the packet has not been received successfully by the second stationthen optionally (not illustrated in FIG. 3) the packet may beretransmitted at step 310. Otherwise, flow proceeds to step 325 wherethe first station divides the unsuccessful packet into a plurality ofsub-packets. At step 330 each sub-packet has a sub-packet indicatorinserted into it, the sub-packet indicator being selected from a numberset having a plurality of numbers in common with the number set of thesequence numbers, and at step 335 the first sub-packet is transmitted.At step 340 the transmitted sub-packet is received by the secondstation, error correction performed if errors are present in thereceived sub-packet, and the sub-packet is acknowledged. At step 345,the first station determines whether all of the sub-packets have beentransmitted. If not, flow reverts to step 335 where the next sub-packetis transmitted. If all of the sub-packets have been transmitted, flowreverts to step 310 where the next packet is transmitted.

FIG. 4 is a schematic diagram of a system 400 for communicating datafrom a first station 410 to a second station 450. The first station 410comprises a transceiver 411 coupled to an antenna 412 for transmittingpackets and sub-packets and for receiving acknowledgements from thesecond station 450. Coupled to the transceiver 411 is a processingmeans, such as a microcontroller, for constructing, from data that is tobe communicated, packets and sub-packets for transmission, includinginserting sequence numbers and sub-packet indicators, and for analysingacknowledgements received from the second station 450. Coupled to theprocessing means 413 is a storage means 414, such as a random accessmemory (RAM) for temporarily storing the packets and sub-packets inreadiness for transmission or retransmission.

The second station 450 comprises a transceiver 451 coupled to an antenna452 for receiving packets and sub-packets and for transmittingacknowledgements to the first station 410. Coupled to the transceiver451 is a processing means 453, such as a microcontroller, for decodingreceived packets and sub-packets, generating acknowledgements fortransmission, analysing the sequence numbers and sub-packet indicators,and for assembling the packets and sub-packets in the correct order toreconstitute the original data. Coupled to the processing means 453 is astorage means 454, such as a RAM, for storing the received packets andsub-packets.

In a first embodiment, the first sub-packet in the sub-sequence ofsub-packets uses the same sequence number, n, as the failed packet fromthe sequence of packets. The i^(th) sub-packet in the sub-sequence usesthe sequence number n+i−1. If the second station has already correctlyreceived the packets with sequence numbers n+1 to n+i−1, the secondstation assumes that data received with sequence numbers n to n+i−1 aresub-packets of the data from the failed packet n. The second station cantherefore re-order the packets and sub-packets as shown in FIG. 5. InFIGS. 5 to 9, the larger boxes represent packets and the smaller boxesrepresent sub-packets, and the numbers within the boxes represent thesequence numbers and sub-packet indicators. In the example of FIG. 5,the packet containing sequence number 3 failed to be received and thedata in it is retransmitted in sub-packets containing the numbers 3, 4and 5.

However, a problem with this embodiment can arise if the i^(th)sub-packet is received before the packet with sequence number n+i−1.This may occur if there is a pause in the sequence of packets, or if thesequence of packets terminates with no packet ever transmitted withsequence number n+i−1. The second station is then unable to determinewhether data received with sequence number n+i−1 is a packet or asub-packet.

This problem may be overcome by transmitting a dummy packet, e.g. withzero payload, with sequence number n+i−1 before the sub-packet havingsequence number n+i−1. The second station then assumes that the firstdata to be received with sequence number n+i−1 is a packet, and thesecond data received with that sequence number is a sub-packet.Alternatively, the first station may transmit a special signal toindicate that the packet sequence has terminated or paused, so that thesecond station will know that subsequent received data comprisessub-packets. Alternatively, the sub-sequence may use sequence numberswith a large negative predetermined offset from the sequence number ofthe failed packet.

In a second embodiment, the sub-packets may use the sequence numbersstarting from sequence number n of the failed packet, or a starting fromthe sequence number having a predetermined negative offset from thesequence number of the failed packet, but thereafter decrementing ratherthan incrementing the sequence number, as shown in FIG. 6. This avoidsthe potential ambiguity identified above in relation to the secondembodiment. In the example of FIG. 6, the packet containing sequencenumber 3 failed to be received and the data in it is retransmitted insub-packets containing the numbers 3, 2 and 1.

In order to avoid ambiguities, it is also beneficial to define someadditional rules in relation to the second embodiment:

-   -   a) The first station shall not use a sequence number for a        sub-packet until all transmissions of the packet with that        sequence number have finished. For example, with reference to        the example illustrated in FIG. 9, the second station receives        1, 2, 3, 6, 4, 7, 8, 9, 4′, 5′, where the ′ symbol is used to        indicate a sub-packet (smaller box). Packet having sequence        number 5 failed to be received (indicated in FIG. 9 by a shaded        box) and is retransmitted using sub-packets containing numbers 4        and 5. The packets and sub-packets are re-ordered to 1, 2, 3, 4,        4′, 5′, 6, 7, 8, 9. The first station does not re-use sequence        numbers 4 and 5 for sub-packet retransmissions of the packet        having sequence number 5 until transmission of the packet with        sequence number 4 has been completed successfully.        -   If this rule were not obeyed, and the first station            transmitted 4′ before 4, the second station would            erroneously re-order the packets and sub-packets to 1, 2, 3,            4′, 4, 5′, 6, 7, 8, 9, so that packet 4 ended up inserted            between the two sub-packets of the retransmitted packet 5.    -   b) When a sequence number is re-used for a sub-packet indicator,        it is transmitted using a different HARQ process from the HARQ        process which was used for the packet with the same number. This        enables the second station to distinguish between sub-packets        and packets which are simply duplicate retransmissions having        the same number.        -   Duplicate packets may occur if, for example, the second            station transmits a positive acknowledgement in response to            a physical layer HARQ retransmission of a packet but the            first station misinterprets the positive acknowledgement as            a negative acknowledgement, where the retransmission was the            last permitted physical layer retransmission in that HARQ            cycle. In this case, the correctly-decoded packet would be            passed up to the MAC layer of the second station. However,            the first station might decide to re-start the transmission            of the packet using the same sequence number, which could            eventually result in a duplicate packet with the same            sequence number being passed up to the MAC layer of the            second station.        -   For example, consider the case when the second station            receives 1, 2, 3, 3, 4, 5, 6, 7. The second station is            unable to determine whether the second data with SN=3 is a            duplicate of the first packet with SN=3, in which case the            second packet should be discarded and not passed up to            higher layers, or whether the second data with SN=3 and the            data with SN=4 are sub-packets containing retransmissions of            parts of the original packet with SN=4 which was not            correctly received, in which case all the packets should be            passed up to higher layers in the same order as indicated            above.        -   This problem is avoided if the second station can assume            that all data with apparently duplicated sequence numbers            which appear on the same HARQ process are duplicates which            should be discarded, while data with apparently duplicated            sequence numbers which appear on a different HARQ process            from the first packet with that sequence number are            sub-packets containing retransmissions of parts of another            packet and should be reassembled in the corresponding order.        -   Note that this rule is not applicable when only one HARQ            process is used. However, when only one HARQ process is            used, if the transmissions of sub-packets of a failed packet            with SN=n commence before a packet with SN=n+1 is            transmitted, the sub-packets of the failed packet can be            numbered n+1, n+2, . . . n+i, and the next packet can then            be transmitted with SN=n+i+1. For example, consider the case            when the first station transmits packets 1, 2, 3, 4. Packet            4 fails and is not passed up to the MAC layer of the second            station. Therefore the first station transmits sub-packets            with SNs 4, 5, 6, 7, where each sub-packet contains a            quarter of the data from the packet which was originally            transmitted with SN=4. The first station then continues by            transmitting the next data packet with SN=8, whereas this            packet would have used SN=5 if packet 4 had not failed.        -   Therefore the following rule can be defined for the case of            a single HARQ process: All correctly received packets or            sub-packets which have a sequence number which is the same            as an earlier correctly received packet or sub-packet shall            be discarded in the usual way. Note that this does not            include the case of the sequence numbers being reused due to            wrap-around of the sequence number field after 2^(b) packets            where b is the number of bits available for the sequence            number.    -   c) Where multiple packets are aborted and need to be        retransmitted in parts, the first station shall always transmit        the sub-packets for the earliest aborted packet first, or not at        all. A sub-sequence for the packet with SN=m shall not be        transmitted after a sub-sequence has started for the packet with        SN=n where n>m (except in the case of sequence number        wrap-around).        In spite of these rules, some minor ambiguities remain with the        second embodiment, although these are not considered serious:

-   a) If a first PDU is never passed up to the MAC layer, that is the    first station never transmits a sub-sequence for it, for example as    a result of misinterpreting a negative acknowledgement as a positive    acknowledgement, and this is followed shortly afterwards by another    PDU for which a sub-sequence is transmitted, and the sub-sequence    re-uses sequence numbers from before the first PDU, then the second    station will assume that the first few re-used sequence numbers    relate to the first PDU.    -   For example, suppose that the first station sends 1, 2, 3, 4, 5,        6, 2, 3, 4, 5, 7, 8. Errors occur on PDUs 3 and 5, so that these        PDUs are not passed up to the MAC layer in the second station.        The first station realises that PDU 5 has failed, but not PDU 3,        and splits the original PDU5 into 4 sub-packets with sequence        numbers 2, 3, 4, 5. The MAC layer in the second station receives        1, 2, 4, 6, 2′, 3′, 4′, 5′, 7, 8. It then erroneously re-orders        these packets to give 1, 2, 2′, 3′, 4, 4′, 5′, 6, 7, 8, whereas        the correct order would have been 1, 2, 4, 2′, 3′, 4′, 5′, 6, 7,        8.

-   b) If the PDUs constituting a sub-sequence arrive themselves in the    wrong order, the sub-packet indicator can generally be used to    resolve the re-ordering, except if the first PDU in the sub-sequence    does not arrive first. If the first PDU in the sub-sequence does not    arrive first, the second station may be unable to work out to which    sub-sequence it belongs, or may have already passed later PDUs up to    a higher layer. It is therefore advantageous to further specify that    the first and second PDUs of a sub-sequence shall be transmitted    using the same HARQ process, so that the first PDU is likely to be    received first.

In a third embodiment consecutive sub-packets use consecutive sequencenumbers preceding the sequence number of the data packet to which thesub-packet relates. Expressed mathematically, the i^(th) sub-packet in asub-sequence comprises sequence number n−p+i, where p is the number ofsub-packets, as shown in FIG. 7. Therefore, the first sub-packet usessequence number n−(p−1), and the final, p^(th) sub-packet uses sequencenumber n. In the example of FIG. 7, the packet containing sequencenumber 3 failed to be received and the data in it is retransmitted insub-packets containing the numbers 1, 2 and 3. Alternatively, theconsecutive sub-packets may use consecutive sequence numbers in the sameorder as used in the data packets and terminating with the sequencenumber having a predetermined negative offset from the sequence numberof the data packet being retransmitted.

The third embodiment has the advantage that it enables the secondstation to determine how many sub-packets the sub-sequence comprises andtherefore when the sub-sequence has terminated. This is particularlyuseful if the MAC layer in the second station passes the re-orderedpackets up to a higher layer, as it enables the second station todetermine when to pass the packet with sequence number n+1 up to thehigher layer. In the example of FIG. 7, after the receipt of sub-packetnumbered 3, the second station knows that it can now pass the packetwith sequence number 4 up to the higher layer.

In a fourth embodiment, the first sub-packet of the sub-sequence usessequence number n of the data packet to which the sub-packet relates,and the i^(th) sub-packet, i>1, uses sequence number n−p+i−1, as shownin FIG. 8. In the example of FIG. 8, the packet containing sequencenumber 3 failed to be received and the data in it is retransmitted insub-packets containing the numbers 3, 1, and 2. This fourth embodimenthas the advantage that it enables the second station to determine,immediately on receipt of the first sub-packet, to which packet thesub-sequence relates, and also to determine how many sub-packets thesub-sequence comprises and therefore when the sub-sequence hasterminated. Alternatively, the first sub-packet of the sub-sequence usesthe sequence number having a predetermined negative offset from thesequence number of the data packet being retransmitted, and thefollowing sub-packets use the sequence numbers preceding said offsetsequence number, using these in the same order as the order of use ofthe sequence numbers of the data packets.

In those embodiment that use for the sub-packets a sequence numberinvolving a predetermined negative offset from the sequence number ofthe data packet being retransmitted, the second station, whendetermining which packet the retransmission corresponds to, and theorder of the sub-packets, adds the magnitude of the offset to the valueof the received sub-packet indicator if a data packet having the samesequence number as the received sub-packet indicator has already beenreceived. The size of the predetermined negative offset may be signalledfrom one of the first and second stations to the other.

Although the invention has been described in terms of sequence numbersat the MAC layer, the invention may also be applied to sequence numbersused at higher layers than the MAC, for example the RLC (Radio LinkControl) level.

Optionally, sub-packets can themselves be divided into sub-sub-packetsand the same principles of the invention applied to the sub-packets andsub-sub-packets as have been described for the packets and sub-packets.

In the present specification and claims the word “a” or “an” precedingan element does not exclude the presence of a plurality of suchelements. Further, the word “comprising” does not exclude the presenceof other elements or steps than those listed.

The inclusion of reference signs in parentheses in the claims isintended to aid understanding and is not intended to be limiting.

From reading the present disclosure, other modifications will beapparent to persons skilled in the art. Such modifications may involveother features which are already known in the art of data communicationand which may be used instead of or in addition to features alreadydescribed herein.

1. A method of transmitting data from a first station to a secondstation, comprising: at the first station, dividing the data into asequence of data packets and transmitting the sequence of data packets;at the second station, receiving the data packets and transmittingacknowledgements indicating whether the data packets have been receivedsuccessfully; at the first station, retransmitting as a sub-sequence ofa plurality of sub-packets a data packet which has not been receivedsuccessfully; at the second station, reconstituting the data from thedata packets and sub-packets; wherein the data packets comprise asequence number providing an indication of position of each data packetwithin the sequence of data packets, the sub-packets comprise asub-packet indicator providing an indication of position of eachsub-packet within the sub-sequence of sub-packets, the sequence numbersand sub-packet indicators include a plurality of numbers in common, andthe first station transmits a dummy packet before transmitting asub-packet of the sub-sequence of the plurality of sub-packets, thedummy packet having a dummy sequence number same as the sub-packetindicator of the sub-packet of the sub-sequence of the plurality ofsub-packets which is transmitted thereafter.
 2. A method as claimed inclaim 1, wherein the sub-packet indicator comprises, in consecutivesub-packets, consecutive sequence numbers commencing with the sequencenumber of the data packet being retransmitted and followed by subsequentsequence numbers.
 3. A method as claimed in claim 1, wherein thesub-packet indicator comprises, in consecutive sub-packets, consecutivesequence numbers commencing with a sequence number having apredetermined negative offset from the sequence number of the datapacket being retransmitted and followed by subsequent sequence numbers.4. A method as claimed in claim 2, wherein the sub-packet comprises nofurther indication of its position relative to the other data packets.5. A method as claimed in claim 1, wherein the sub-packet indicatorcomprises, in consecutive sub-packets, consecutive sequence numberscommencing with the sequence number of the packet being retransmittedand followed by preceding sequence numbers in reverse order of usecompared with the sequence numbers in the data packets.
 6. A method asclaimed in claim 1, wherein the sub-packet indicator comprises, inconsecutive sub-packets, consecutive sequence numbers commencing with asequence number having a predetermined negative offset from the sequencenumber of the packet being retransmitted and followed by sequencenumbers preceding the offset sequence number in reverse order of usecompared with the sequence numbers in the data packets.
 7. A method asclaimed in claim 1, wherein the sub-packet indicator comprises, inconsecutive sub-packets, consecutive sequence numbers in the same orderas used in the data packets and terminating with the sequence number ofthe data packet being retransmitted.
 8. A method as claimed in claim 1,wherein the sub-packet indicator comprises, in consecutive sub-packets,consecutive sequence numbers in the same order as used in the datapackets and terminating with a sequence number having a predeterminednegative offset from the sequence number of the data packet beingretransmitted.
 9. A method as claimed in claim 1, wherein the sub-packetindicator comprises, in the first sub-packet the sequence number of thedata packet being retransmitted, and in following sub-packets, precedingsequence numbers in the same order of use as the sequence numbers in thedata packets.
 10. A method as claimed in claim 1, wherein the sub-packetindicator comprises, in the first sub-packet a sequence number having apredetermined negative offset from the sequence number of the datapacket being retransmitted, and in following sub-packets, sequencenumbers preceding the offset sequence number in the same order of use asthe sequence numbers in the data packets.
 11. A first station fortransmitting data to a second station, the first station comprising:means for dividing the data into a sequence of data packets, each datapacket including a sequence number providing an indication of positionof the data packet within the sequence of data packets; means fortransmitting each data packet in turn; means for receiving anacknowledgement from the second station indicating whether thetransmitted data packet has been received successfully; means responsiveto receiving an acknowledgement indicating that the transmitted datapacket has not been received successfully, for dividing the unsuccessfuldata packet into a sub-sequence of sub-packets, each sub-packetincluding a sub-packet indicator providing an indication of position ofthe sub-packet within the sub-sequence, wherein the sequence numbers andthe sub-packet indicators include a plurality of numbers in common;means for transmitting a dummy packet before a sub-packet of thesubsequence of the plurality of sub-packets; and means for transmittingeach sub-packet in turn, wherein the dummy packet has a dummy sequencenumber same as the sub-packet indicator of the sub-packet of thesub-sequence of the plurality of sub-packets which is transmittedthereafter.
 12. A system for communicating data from a first station toa second station, the system comprising a first station as claimed inclaim 11 and a second station having: means for receiving data packets,sub-packets and dummy packets; means for decoding the received datapackets and sub-packets; means for generating acknowledgementsindicative of whether the received data packets and sub-packets havebeen received successfully; means for transmitting the acknowledgements;and means for employing sequence numbers of the data packets andsub-packet indicators of the sub-packets to reconstitute the data,wherein a dummy packet is transmitted by the first station before asub-packet of the sub-sequence of the plurality of sub-packets andwherein the dummy packet has a dummy sequence number same as thesub-packet indicator of the sub-packet of the sub-sequence of theplurality of sub-packets which is transmitted thereafter.